#include <stdio.h>
#include <signal.h>
#include <unistd.h>

int flag = 0;
// volatile int flag = 0;

void handler(int){
    flag = 1;
    printf("set flag: 0 to 1\n");
}

int main(){
    signal(2, handler);
    while(!flag){  // flag为0时循环
        printf("执行代码ing\n");
        sleep(1);
    }
    printf("正常退出\n");
    return 0;
}
